System and method for network-loading game data

ABSTRACT

A system and method for network-loading game data includes a server and a client. The server includes a databank for storing game data. The client includes a game engine; a search module to search corresponding game data from the databank according to control commands generated by the game engine; and a storage module to store the searched corresponding game data for the game engine to use. Therefore, the game engine and the game data are separated, and the game data are real-time loaded from the server when the client runs the game program.

FIELD OF THE INVENTION

The invention generally relates to a system and method for loading gamedata, and more particular, to a system and method for real-time loadinggame data through network.

BACKGROUND OF THE INVENTION

Along with the day-by-day increasing applications of computer image,artificial intelligence and online software, the developments ofcomputer game are rapidly advancing. In the earliest sole-machine game,players pursue the magnificent pictures, the atmosphere and the fun ofthe game. After Internet appears, it provides an infinitely charmingcarrier and tool for computer games, and provides the entire gameindustry full energy of further development. The network game has theadvantages of two-way data exchange, fast speed and no spatiallimitation. It fundamentally enhances the game interaction, simulationand athletics, thus to enable the game players expressing theirpotentials in the virtual world that cannot be achieved in the realworld. It changes the situation of fixity, stereotype and facing onlywith computer in the conventional sole-machine game. The computer gameindustry is now in the golden time of vigorous development. How toutilize the network superiority and develop better learning and gamesoftware is the focal point of emulation for the current softwaredevelopers.

In the computer game development, game engine is the first thing to beestablished. It is like a frame of a game. After the frame isestablished, the level designer, the modeling designer and the animationartist can fill in the contents.

Recently, because of the high development cost of game engine and thepossible sharing of some game engines as standard engines for other gamedevelopments, the game engines can be licensed to others. Therefore,each game does not need to develop the codes from the beginning so as tosave a lot of repetitive works. However, in order to developindividualized games, the developers have to add in game data based onthe engine program. After the game data being finished, they are bundledwith the game engine to become a full game. The disadvantages of theprocedure are that the data is unable to be updated easily, the codesare complicated and the entire game occupies more memory space.Therefore, how to provide a game encoding method capable of updating thegame data easily and reducing the memory space is the main object ofcurrent game development.

SUMMARY OF THE INVENTION

In view of the above problems, the invention provides a system andmethod for loading game data through network. The primary object is toenable real-time updating of game data and to reduce the memory spacefor running the game.

To achieve the aforesaid object, the invention provides a system forloading game data through network. By separating the game data from thegame engine, the game data is loaded when the program runs. The systemincludes a server having a game databank for classifiably storing gamedata according to different functions; a client, including a gameengine, for implementing the overall controls of all games functions; asearch module for receiving control commands from the game engine andsearching corresponding game data in the game databank according to thecommands; and a storage module, according to the search result, forstoring the corresponding game data as the engine data, for the gameengine to call.

Further, the present invention provides a method for network-loadinggame data. By separating the game data from the game engine, the gamedata is loaded when the program runs. A game databank is firstestablished in a server. A client loads and runs a game engine togenerate control commands. The process searches corresponding game datain the game databank according to the control commands, then stores thesearched game data as the engine data, thus to achieve the correspondinggame function through calling the engine data by the game engine.

Based on the system and method for loading game data through the networkaccording to the present invention, a client being verified through thenetwork registration can legally and real-time download the game data ofeach level. It provides continuous data update to meet the game player'slong-time interest. The separation of game engine and game data makesthe data update convenient, and reduces the memory space required by thegame. It also prevents unauthorized software using, and improves thegame copyright protection.

The detailed content and technology according to the present invention,is described in conjunction with the accompanying drawings as follows:

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will become more fully understood from the detaileddescription given hereinbelow. However, this description is for purposesof illustration only, and thus is not limitative of the invention,wherein:

FIG. 1 is a block diagram of the system for network-loading game dataaccording to the present invention;

FIG. 2 is a block diagram of the system according to an embodiment ofthe present invention;

FIG. 3 is a structural schematic of data packages applied in the presentinvention;

FIG. 4 is an operational flowchart of the method for network-loadinggame data according to the present invention;

FIG. 5 is a flowchart of the method according to an embodiment of theinvention; and

FIG. 6 is a flowchart of fetching game data in an embodiment of theinvention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a block diagram of the system for network-loading game dataaccording to the present invention. It includes a server 10 and a client20. The invention separates the game databank 11 from the game engine21. When the game program at the client 20 runs, it real-time loads gamedata from the server 10. The structure of the invention will bedescribed in detail hereinafter.

1. The server 10 includes a game databank 11 for classifiably storinggame data according to different functions.

Wherein, the game data are classified into speech, picture, text andindex by attribute. Functionally, the game data are classified intoengine data, map data, character data, animation data, learning data andlevel data. The attributes of the various functional data are asfollows:

Engine data: speech (sound effect), picture (user interface), text(hints, explanation);

Map data: index;

Character data: picture, index;

Animation data: picture, index;

Learning data: speech, text, index;

Level data: picture, speech, index.

The data design is as follows:

1) Map data design: map data is an index file corresponding to eachlevel. The map data includes scene structure information, character listand animation list in the level.

2) Character data design: according to the character type, characterdata are partitioned, and a kind of character is a data block logically.A character data can be a single file. A character data block includesversion number, index and picture.

3) Animation data design: according to the animation type, animationdata are partitioned, and a kind of animation is a data block logically.An animation data can be a single file. An animation data block includesversion number, index and picture.

4) Learning data design: each level has a corresponding learning datapackage. A learning data includes index (the text as keywords), picture,speech and text.

5) Level data design: each level has a corresponding level data package.The level data includes index (the text as keywords), picture and speech(the speech data can be shared with the learning data of this level).

2. The client 20 includes a game engine 21, a search module 22 and astorage module 23. The game engine 21 is used to implement the overallcontrols of all the game functions. The game engine controls all thestories, levels, arts, music and operations for the player. It acts as adirector to bundle all the game elements and directs them to worktogether. Briefly, the game engine is the main routine to control allthe game functions, including the collision computation, the physicalsystem, the relative positions of objects, the player's inputs, thecorrect volume of sound output and so on.

The search module 22 receives control commands from the game engine andsearches the corresponding game data in this game databank according tothe commands.

The storage module 23 stores the searched corresponding game data forthe game engine to use.

As shown in FIG. 2, the system of the invention also includes a userverification module 24 in the server 10 to verify the useridentification through network registration and to guarantee thevalidity of user who downloads the game data.

The server engine data is bundled in the software for user to downloadthrough network. The user can locally install the game engine throughthe software. As shown in FIG. 3, the data package of each levelincludes a level data sub-package 31, a map data sub-package 32, acharacter data sub-package 33, an animation data sub-package 34 and alearning data sub-package 35. Each data sub-package is composed of aplurality of files. The hierarchy data package structure fulfils themanagement needs.

Please refer to FIG. 4, a flowchart of the method for network-loadinggame date according to the present invention. Establishing a gamedatabank in the server (step 410). The client loads and runs the gameengine (step 420). According to control commands generated by the gameengine, searching the corresponding game data in the game databank (step430). According to the search result, storing the searched game data asthe engine data (step 440). The game engine calls the engine data andimplements the corresponding game functions (step 450).

Please refer to FIG. 5, a flowchart of the method according to anembodiment of the present invention. After downloading game engine, theuser runs the game engine and chooses a game level (step 510). Thesystem verifies the user's identification and judges the validity of theuser (step 520). If the user is valid, searching and downloadingcorresponding data package according to the level chosen by the user(step 530). After finishing the downloading, the system enters the gameloop (step 540). Judging whether the user passes the level (step 550).If passes, then entering the next level or reselecting the level. If theuser does not pass, then asking the user whether to quit the game (step560). If the user selects to quit, then stopping the program.

FIG. 6 illustrates the process of fetching game data in an embodiment ofthe invention. Supposed in the first level, the player hits a brick(namely character in game design), the system has to play a speech“Hello”, and then it has to fetch the speech data. Supposed there are:

First level data package: level1.pkj

Learning data sub-package: learning.dat

Speech file: hello.wav

The fetching process is first to inquire the first level data package(level1.pkj) and the keyword is learning data package (learning.dat)(step 610). Then, inquiring the learning data sub-package (learning.dat)and the keyword is speech file (hello.wav) (step 620). When success, itfetches the target data, and returns with the speech data (step 630).

The invention being thus described, it will be obvious that the same maybe varied in many ways. Such variations are not to be regarded as adeparture from the spirit and scope of the invention, and all suchmodifications as would be obvious to one skilled in the art are intendedto be included within the scope of the following claims.

1. A system for network-loading game data by separating game data from agame engine and real-time loading said game data from a server whenrunning said game engine at a client, comprising: a server, having agame databank for classifiably storing said game data according todifferent functions; and a client, comprising: a game engine forimplementing the overall controls of all games functions; a searchmodule for receiving control commands from said game engine andsearching corresponding game data in said game databank according tosaid commands; and a storage module, according to said search result,for storing said corresponding game data for said game engine to use. 2.The system for network-loading game data of claim 1 wherein said gamedata are functionally classified into engine data, map data, characterdata, animation data, learning data and level data.
 3. The system fornetwork-loading game data of claim 1 wherein said control commands is tofetch relative data package according to a current level.
 4. The systemfor network-loading game data of claim 1 further comprises a userverification module connecting with said search module in said serverfor verifying user identification.
 5. The system for network-loadinggame data of claim 1 wherein said game engine is downloaded from saidserver.
 6. A method for network-loading game data by separating gamedata from a game engine and real-time loading said game data from aserver when running said game engine at a client, comprising steps of:establishing a game databank in said server; loading and running saidgame engine at said client to get control commands; searchingcorresponding game data in said game databank according to said controlcommands; storing said corresponding game data as engine data for saidgame engine; and calling said engine data by said game engine to achievecorresponding game functions.
 7. The method for network-loading gamedata of claim 6 wherein said game data are functionally classified intoengine data, map data, character data, animation data, learning data andlevel data.
 8. The method for network-loading game data of claim 6wherein said control commands is to call relative data package accordingto a current level.
 9. The method for network-loading game data of claim6 further comprises a step of verifying user identification.
 10. Themethod for network-loading game data of claim 6 further comprises a stepof downloading said game engine from said server.